home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48hor1
/
qrad.src
< prev
next >
Wrap
Text File
|
1990-10-18
|
2KB
|
90 lines
%%HP: T(3)A(D)F(.);
by David Lowenstein
DIR
MN
\<< \->NUM DUP SIGN SWAP ABS DUP IP 10 OVER DUP
\<< XPON
\>> IFT - FIX SWAP FP \->Q STD + *
\>>
OQF
\<< \->NUM DUP SIGN SWAP SQ 5 FIX \->Q DUP TYPE
\<< OBJ\-> DROP2 PF FS SWAP PF FS
\>>
\<< { 1 1 } SWAP PF FS
\>> IFTE 1 1 \-> B A D E
\<< 1 A SIZE 1 -
FOR c A c 1 + GET A c GET 2 / DUP FP
\<< IP OVER SWAP ^ 'D' STO* 'E' STO*
\>>
\<< ^ 'D' STO*
\>> IFTE 2
STEP 1 B SIZE 1 -
FOR c B c 1 + GET B c GET 2 / DUP FP
\<< IP OVER SWAP ^ 'D' SWAP STO/ 'E' SWAP STO/
\>>
\<< ^ 'D' SWAP STO/
\>> IFTE 2
STEP D \->Q E \->Q STD DUP TYPE
\<< \v/ *
\>>
\<< "'\v/" SWAP \->STR + OBJ\-> DUP EVAL FP NOT
\<< EVAL
\>> IFT *
\>> IFTE *
\>>
\>>
QF
\<< \->NUM DUP SIGN SWAP SQ 5 FIX \->Q DUP TYPE
\<< OBJ\-> DROP2 PF FS SWAP PF FS
\>>
\<< { 1 1 } SWAP PF FS
\>> IFTE 1 1 \-> B A D E
\<< 1 A SIZE 1 -
FOR c A c 1 + GET A c GET 2 / DUP FP
\<< IP OVER SWAP ^ 'D' STO* 'E' STO*
\>>
\<< ^ 'D' STO*
\>> IFTE 2
STEP 1 B SIZE 1 -
FOR c B c 1 + GET B c GET 2 / DUP FP
\<< IP OVER SWAP ^ 'D' SWAP STO/ DUP 'E' STO* 'D' SWAP STO/
\>>
\<< ^ 'D' SWAP STO/
\>> IFTE 2
STEP D \->Q E \->Q STD DUP TYPE
\<< \v/ *
\>>
\<< "'\v/" SWAP \->STR + OBJ\-> DUP EVAL FP NOT
\<< EVAL
\>> IFT *
\>> IFTE *
\>>
\>>
FS
\<< 0 \-> l c
\<< { } l 1 GET 1 l SIZE
FOR p l p GET SAME
\<< 'c' INCR DROP
\>>
\<< c + l p 1 - GET + 1 'c' STO
\>> IFTE l p GET
NEXT c SWAP 1 \->LIST + +
\>>
\>>
PF
\<< { } OVER SIGN -1 ==
\<< -1 +
\>> IFT SWAP ABS 1 \->LIST
DO DUP DUP DUP SIZE SWAP OVER GET DUP 2 / IP 2 \-> n h c
\<<
WHILE c h \<= n c / FP AND
REPEAT 'c' INCR DROP
END n 1 c h \<=
\<< DROP c SWAP OVER / 2
\>> IFT \->LIST
\>> REPL
UNTIL SWAP OVER ==
END +
\>>
END